.TH std::numpunct::truename,do_truename,falsename,do_falsename 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::numpunct::truename,do_truename,falsename,do_falsename \- std::numpunct::truename,do_truename,falsename,do_falsename

.SH Synopsis
   Defined in header <locale>
   public:                                   \fB(1)\fP
   string_type truename() const;
   public:                                   \fB(2)\fP
   string_type falsename() const;
   protected:                                \fB(3)\fP
   virtual string_type do_truename() const;
   protected:                                \fB(4)\fP
   virtual string_type do_falsename() const;

   1,2) Public member function, calls the member function do_truename and do_falsename
   of the most derived class respectively.
   3) Returns the string to be used as the representation of the boolean value true.
   4) Returns the string to be used as the representation of the boolean value false.

.SH Return value

   1,3) The object of type string_type to use as the representation of true. The
   standard specializations of std::numpunct return "true" and L"true".
   2,4) The object of type string_type to use as the representation of false. The
   standard specializations of std::numpunct return "false" and L"false".

.SH Example


// Run this code

 #include <iomanip>
 #include <iostream>
 #include <locale>

 struct custom_tf : std::numpunct<char>
 {
     std::string do_truename()  const { return {'t'}; }
     std::string do_falsename() const { return {'f'}; }
 };

 int main()
 {
     std::cout << std::boolalpha;

     // default boolalpha output
     std::cout << "Default locale,\\n"
                  "  boolalpha  true: " << true << "\\n"
                  "  boolalpha false: " << false << "\\n\\n";

     // with custom_tf applied to locale
     std::cout.imbue(std::locale(std::cout.getloc(), new custom_tf));
     std::cout << "Locale with modified numpunct,\\n"
                  "  boolalpha  true: " << true << "\\n"
                  "  boolalpha false: " << false << '\\n';
 }

.SH Output:

 Default locale,
   boolalpha  true: true
   boolalpha false: false

 Locale with modified numpunct,
   boolalpha  true: t
   boolalpha false: f
